package proyectoX.src.entidades;

import java.awt.Point;
import java.awt.Rectangle;

import javax.swing.ImageIcon;

import proyectoX.src.aplicacion.Nivel;

/**
 * Nave enemiga que persigue al jugador hasta colisionar con él.
 *
 */
public class Kamikaze extends Enemiga {

	/**
	 * Crea a la nave enemiga con los parámetros pasados.
	 * @param nivel Nivel actual. 
	 * @param ref Imagen a utilizar.
	 */
	public Kamikaze(Nivel nivel,ImageIcon ref) {
		super(nivel,3, ref,15,4);		//lenta pero de chocar puede matar instantáneamente al jugador 
	}
	
	/**
	 * Es necesario implementarlo, pero esta nave sólo busca colisionar no genera disparos.
	 * 
	 * @param location Posición para acomodar el disparo (no es utilizado).
	 */
	public void disparar(Point location){
		
	}

	/**
	 * El desplazamiento de esta nave es acercarse al jugador dependiendo de la posición
	 * de ésta.
	 */
	public void mover() {
		
		int dx = 0;
		int dy = 0; 
		
		
		Point posicionNave = nivel.obtenerNavePrincipal().getLocation();
		
		//desplazamiento horizontal
		if (getX() >= posicionNave.x) {
			dx = -velocidad;
		}
		else {
			dx = velocidad;
		}
		
		//desplazamiento vertical
		if (getY() >= posicionNave.y) {
			dy = -velocidad;
		}
		else {
			dy = velocidad;
		}
		
		this.setLocation(getX() + dx, getY() + dy);
	}

	/**
	 * Devuelve el área de colisión. 
	 * @return Área de colisión. 
	 */
	public Rectangle getBounds() {
		return new Rectangle(this.getX(), this.getY(), 56, 46);  
	}
	
}
